# ============================================================
# * Copyright © hk. 2022-2025. All rights reserved.
# * File name: CMakeLists.txt
# * Author   : 苏木
# * Date     : 2025-05-22
# * Version  : 
# * Description: cmake version 3.16.3
# ============================================================
## https://cmake.com.cn/cmake/help/latest/guide/tutorial/index.html
## https://cmake.org/cmake/help/latest/

# 指定 CMake 的最低版本要求
# --------------------------------------------------
cmake_minimum_required(VERSION 3.10)


# 设置项目名称和使用的编程语言
# --------------------------------------------------
project(SPROJECT C)


# 指定可执行程序和源文件
# --------------------------------------------------
add_executable(app_demo.out main.c)


# 复制文件
# --------------------------------------------------
# configure_file(source destination [COPYONLY | @ONLY] [ESCAPE_QUOTES])
# source      输入文件的路径。相对路径相对于 CMAKE_CURRENT_SOURCE_DIR 的值处理。输入路径必须是文件，而不是目录。
# destination 输出文件或目录的路径。相对路径相对于 CMAKE_CURRENT_BINARY_DIR 的值处理。如果路径指定一个现有目录，
# 			  则输出文件将放置在该目录中，文件名与输入文件相同。如果路径包含不存在的目录，则会创建这些目录。
# configure_file()最好只用于不需要经常更改的文件。
message(STATUS "==> ${CMAKE_VERSION} 只复制文件")
# 定义源文件和目标文件路径
set(SOURCE_FILE "main.c")
set(DESTINATION_FILE "main_cpy.c")

# 使用configure_file复制文件
configure_file(
    ${SOURCE_FILE}
    ${DESTINATION_FILE}
    COPYONLY            # 只做复制操作
)
message("")
